Method and system for distributing multimedia contents through a wireless communications network, particularly a mobile telephony network

ABSTRACT

In a wireless communications network having a base station subsystem controlling at least one network cell, and in which the base station subsystem communicates with mobile stations in the cell through radio blocks, a method of distributing information contents received in data packets at the base station subsystem to the mobile stations, includes obtaining, starting from the data packets, radio blocks to be transmitted through the network cell, labeling the radio blocks with a first radio link identifier, identifying a logic connection between a mobile station and the base station subsystem, communicating the first radio link identifier to a first mobile station in the network cell, and in case at least one second mobile station in the network cell, asks to receive the information contents, communicating thereto the first radio link identifier. The method further includes having the first mobile station and the at least one second mobile station assigned respective second radio link identifiers to be included in the radio blocks.

CROSS REFERENCE TO RELATED APPLICATION

This application is a national phase application based onPCT/EP2004/050517, filed Apr. 14, 2004, the content of which isincorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to the field oftelecommunications, and more particularly to wireless, mobilecommunications networks, such as mobile telephony networks.Specifically, the invention concerns the distribution of relevantamounts of data, such as multimedia information contents, to mobile userterminals (e.g., mobile phones) through a wireless, mobilecommunications network.

2. Description of the Related Art

Mobile telephony networks were initially conceived for enabling voicecommunications, similarly to the wired, Public Switched TelephoneNetworks (PSTNs), but between mobile users.

Mobile telephony networks have experienced an enormous spread,especially after the introduction of second-generation mobile cellularnetworks, and particularly digital mobile cellular networks such asthose complying with the Global System for Mobile communications (GSM)standard (and its United States and Japanese counterparts).

The services offered by these cellular networks in addition to plainvoice communications have rapidly increased in number and quality; justto cite a few examples, Short Messaging System (SMS) and MultimediaMessaging System (MMS) services, and Internet connectivity services havebeen made available in the last few years.

However, these second-generation cellular networks, albeit satisfactoryfor voice communication, offer very poor data exchange capabilities.

Similarly to the PSTNs, second-generation cellular networks are in factswitched-circuit networks; this greatly limits the bandwidth that can beallocated for a given user. On the contrary, data communicationsnetworks such as computer networks and, among them, the Internet, adoptpacket switching schemes, which allow much higher data transfer rates.

Some solutions have been proposed to overcome the limitations ofconventional, switched-circuit cellular networks such as the GSMnetworks, so as to enable users of mobile terminals efficientlyexploiting services offered through the Internet.

One of the solutions that have acquired a significant popularity is theGeneral Packet Radio Service (shortly, GPRS). The GPRS is a digitalmobile phone technology compatible with GSM networks (actually, built onthe existing GSM network architecture) that enables data transfer at aspeed higher than that allowed by pure GSM.

Essentially, the GPRS can be viewed as a GSM add-up that supports andenables packet-based data communication.

Although third-generation wireless communications systems such as thosecomplying with the Universal Mobile Telecommunication System (UMTS) aremore promising in terms of data transfer rates, the GPRS is aready-at-hand solution for enhancing the data exchange capabilities ofalready existing GSM networks, and is therefore gaining an increasingpopularity.

In GPRS communications networks the information content is usuallytransferred in a point-to-point modality (unicasting), upon activationof a session between a GPRS mobile phone (or mobile station) and aservice provider connected to a packet data network, e.g. a serverconnected to the Internet; the activation of such a session involves thesetting up of logic connections between the server and the GPRS mobilephone.

In such a point-to-point communication mode, the radio resources to beallocated for the exchange of data between the ground GPRS network andthe GPRS mobile stations depend on the number of different mobilestations simultaneously exploiting the GPRS services, even if the sameGPRS service is being exploited by two or more mobile station users atthe same time. Clearly, this limits the possibility of simultaneouslyaccessing available GPRS services by several users, unless the radioresources are overdimensioned.

Thus, it would be desirable to have the possibility of deliveringinformation contents related to a same GPRS service exploitable by twoor more users at a time through a point-to-multipoint transmission mode,saving the amount of allocated resources.

The problem of broadcasting relatively massive information contents,such as multimedia (audio and/or video) contents, to several mobileterminal users has already been faced in the art.

In particular, the 3GPP (3^(rd) Generation Partnership Project)Technical Specification No. TS 23.246 (“Multimedia Broadcast/MulticastService (MBMS); Architecture and functional description”), v6.1.0,December 2003, whose teachings are herein incorporated by reference,describes the architectural solution and functionalities for MBMS.

The above-referred Technical Specification deals with the “core network”aspects, and does not cover the physical, radio communications aspectsinvolved in the implementation of a MBMS.

Multicast transmission in GPRS networks is also dealt with in theInternational application No. WO 03/019840 A2. The method proposed inthat document provides for routing through a cellular network only asingle copy of multicast data to a plurality of mobile stations in acell; a virtual subscriber mobile station is emulated, that subscribesto a multicast service and receives the multicast data for the cell. Thereal mobile stations that should receive the multicast data areinstructed to listen to, and consequently tune to a channel assigned tothe virtual subscriber.

The Applicant observes that the implementation of the proposed method isnot free of costs, because it involves modifying in a significant waythe network apparatuses governing the radio communications. Inparticular, elements are needed to emulate the virtual mobile station.

Furthermore, the Applicant observes that the proposed method shows anadditional and more severe drawback: the different mobile stations in acell that are exploiting a given multicast service are indistinguishablefor the network apparatuses, which are thus impossibilitated to addressinformation to a specific mobile station.

In the Applicant opinion, this is a severe limitation, for examplebecause it makes impossible to implement efficient policies ofacknowledge/not-acknowledge of the distributed content.

According to a submission recently made at the GERAN2 #18 Meeting, heldin Phoenix, Ariz., U.S.A. from Mar. 22 to Mar. 26, 2004 (the text ofwhich can be downloaded from the Internet siteftp://ftp.3gpp.org/TSG_GERAN/WG2_protocol_aspects/GERAN2_(—)18bis_Phoenix/Docs/G2-040286,entitled “Common Feedback Channel for MBMS delivery”, there is proposedto define a Common Feedback CHannel (CFCH) intended to be used as afeedback channel, where negative acknowledgments (nack) are sent asaccess bursts at precise times. More specifically, according to theproponents, feedback messages are sent by all interested Mobile Stations(MSs) as access bursts on the CFCH at a precise time: if MS does notdecode the RLC block transmitted at time t, it will send an access burstat time t+Δt; if a MS successfully decodes the RLC block transmitted attime t, nothing is transmitted on the feedback channel at time t+Δt.

The consequence is that, if an access burst is detected at time t+Δt(the network could infer that one or more MSs have sent a nack from theincreased received power on the feedback channel), the network realizesthat the block transmitted at time t has not been received (at least) byone MS.

The proponents observe that if several MS's send access bursts at thesame time and they collide, there might be no problem since they allcarry the same info (i.e. loss of block sent at time t). The informationis not the content of the access burst, but the presence of the accessburst itself.

The Applicant however is of the opinion that this implementation of thefeedback from the MSs is not suitable to implement efficientacknowledge/not-acknowledge policies. For example, this implementationdoes not allow to recognize if a series of nack responses may be ignoredbecause it is coming from a mobile station located in a geographicalarea in which the signal reception is very poor. As another example,this implementation cannot allow a better tuning of some parameters ofthe mobile stations in order to increase the quality of the reception ofthe data contents, such as for example the Timing Advance of the mobilestations. It is also noticed that the proponents of the cited solutionclearly state that their goal is not to realize a fully acknowledgedprotocol.

The Applicant has faced the problem of implementing a MBMS service inwhich information may be specifically addressed to different mobilestations (for example an ack/nack request), and in which informationfrom the mobile stations can be recognized and distinguished (forexample, in order to get an ack/nack feedback), by suitable networkequipment.

SUMMARY OF THE INVENTION

The Applicant has found that the mobile stations in a cell that areexploiting a given multicast service, and thus would beindistinguishable for the network (because they share the same physicalcommunication resources) can be rendered distinguishable from each otherby defining a radio link identifier, preferably adapted to be includedin a header of the radio blocks sent to the mobile stations for themulticast service, and communicating such an identifier to the mobilestations. This allows the implementation of, for example, more efficientdata retransmission schemes.

According to an aspect of the present invention, there is thereforeprovided a method for distributing data packets to mobile stationsthrough a wireless communications network.

Summarizing, in a wireless communications network comprising a basestation subsystem controlling at least one network cell, and in whichthe base station subsystem communicates with mobile stations in the cellthrough radio blocks, the method according to this aspect of theinvention comprises:

obtaining, starting from the data packets, radio blocks to betransmitted through the network cell;

labeling said radio blocks with a first radio link identifier,identifying a logic connection between a mobile station and the basestation subsystem;

communicating the first radio link identifier to a first mobile stationin the network cell; and

in case at least one second mobile station in the network cell asks toreceive the information contents, communicating thereto said first radiolink identifier.

The method further comprises having the first mobile station and the atleast one second mobile station assigned respective second radio linkidentifiers, to be included in said radio blocks.

In an embodiment of the present invention, said first radio linkidentifier comprises a Temporary Flow Identity (TFI) corresponding to aTemporary Block Flow (TBF) activated by the base station subsystem fordelivering the information contents to the mobile stations.

In particular, said second radio link identifiers are univocallyassigned to each mobile station.

In a preferred embodiment of the invention, said step of having thefirst and the at least one second mobile stations assigned respectivesecond radio link identifiers includes assigning to the first and the atleast one second mobile stations parameters useful for enabling asynchronization of the radio communication between the MS and the basestation subsystem.

Said step of having the first and the at least one second mobilestations assigned respective second radio link identifiers may beperformed by the base station subsystem on request by the mobilestations, or automatically in reply to a service request from the mobilestations. In particular, this step may be performed before starting totransmitting the radio blocks and, even more particularly, it may beperformed before or after said step of communicating said first radiolink identifier to said first and said second mobile stations.

In an embodiment of the invention, the method comprises having everymobile station in excess of a predetermined number assigned a commonsecond radio link identifier.

In particular, said step of having the first and the at least one secondmobile stations assigned respective second radio link identifiers maycomprise establishing a temporary communication uplink from the mobilestations to the base station subsystem. Preferably, the temporarycommunication uplink is released before transmitting through the networkcell said radio blocks obtained from said data packets.

Information can be addressed to a selected mobile station among thefirst and the at least one second mobile stations using the respectivesecond radio link identifier; to this purpose, the second radio linkidentifier may be included in at least one radio block obtained fromsaid data packets, particularly in a header portion thereof.

In particular, said step of addressing information further comprisesrequesting the selected mobile station to provide an answer; said answermay requesting the mobile station to provide acknowledge information onthe successful receipt of the radio blocks obtained from the datapackets. In particular, said answer may be transmitted to the basestation subsystem on a control channel associated with a channel onwhich the radio blocks are transmitted. The method may includeretransmitting already transmitted radio blocks obtained from the datapackets depending on the acknowledge information received from themobile stations.

According to another aspect of the present invention, a wirelesscommunications network system is provided, for distributing informationcontents provided in data packets by an information content provider tomobile stations through a wireless communications network.

Summarizing, the wireless communications network system comprises:

a network base station subsystem enabling wireless communications with aplurality of mobile stations located in a network cell through radioblocks, the base station subsystem being adapted to receivinginformation contents in data packets, obtaining radio blocks from thedata packets, labeling the radio blocks with a first radio linkidentifier to be communicated to a first mobile station in the networkcell and to at least one second mobile station in the network cellasking to receive the information contents, transmitting the radioblocks.

The base station subsystem is also adapted to assigning respectivesecond radio link identifiers to the first mobile station and to the atleast one second mobile station, the second radio link identifiers beingadapted to be included in said radio blocks.

In particular, said first radio link identifier comprises a TemporaryFlow Identity (TFI) corresponding to a Temporary Block Flow (TBF)activated by the base station subsystem for delivering the informationcontents to the mobile stations.

The base station subsystem may be adapted to univocally assigning saidsecond radio link identifiers to each mobile station.

The base station subsystem may be further adapted to assigning to thefirst and at least one second mobile stations parameters useful forenabling a synchronization of the radio communications between themobile stations and the base station subsystem.

The base station subsystem may be adapted to assigning the second radiolink identifiers on request from the mobile stations, or automaticallyin reply to a service request from the mobile stations. In particular,the base station subsystem may be adapted to assigning the second radiolink identifiers before starting the distribution of the informationcontents, in particular before or, alternatively, after communicatingthe first radio link identifier to the mobile stations.

The base station subsystem may be adapted to assigning a common secondradio link identifier to every mobile station in excess of apredetermined number.

The base station subsystem may be further adapted to establishing atemporary communication uplink from the mobile stations to the basestation subsystem before starting to transmitting the radio blocks.

In an embodiment of the invention, the base station subsystem is adaptedto addressing information to a mobile station among the first and the atleast one second mobile stations using the respective second radio linkidentifiers; in particular, the second radio link identifier may beincluded in at least one of the radio blocks obtained from the datapackets.

In an embodiment of the invention, the base station subsystem is adaptedto requesting the addressed mobile station to provide an answer, inparticular, to provide acknowledge information on the successful receiptof the radio blocks obtained from said data packets. The base stationsubsystem may also be adapted to retransmitting already transmittedradio blocks obtained from said data packets, depending on theacknowledge information received from the mobile stations.

In particular, said answer may be transmitted on a control channelassociated with a channel on which the radio data blocks aretransmitted.

According to a third aspect of the present invention, a mobile stationis provided for use in a wireless communications network supporting thedistribution to the mobile stations of information contents provided indata packets by an information content provider, the informationcontents being transmitted to the mobile stations in radio blockslabeled by a first radio link identifier, particularly a Temporary FlowIdentity (TFI) corresponding to a Temporary Block Flow (TBF) activatedfor delivering the information contents to the mobile stations,communicated by the base station subsystem to the mobile stations.

Summarizing, the mobile station is adapted to:

storing an own second radio link identifier assigned thereto;

recognizing a received radio block as including a second radio linkidentifier;

extracting from the received radio block the second radio linkidentifier; and

comparing the extracted second radio link identifier with said ownsecond radio link identifier.

In particular, the mobile station may be further adapted to consideringitself addressed by the network in case said extracted second radio linkidentifier matches the own second radio link identifier.

In particular, the mobile station is further adapted to providing to thenetwork information on the successful receipt of the radio blocksdelivering the information contents when addressed through the personalsecond radio link identifier.

Said first radio link identifier comprises a Temporary Flow Identity(TFI) corresponding to a Temporary Block Flow (TBF) activated fordelivering the information contents to the mobile stations.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features and advantages of the present invention will bemade apparent by the following detailed description of an embodimentthereof, provided merely by way of non-limitative example, descriptionthat will be conducted making reference to the attached drawings,wherein:

FIG. 1 is a schematic view of a GPRS network supporting multicastservices, adapted to implement a method according to an embodiment ofthe present invention;

FIG. 2 schematically shows how data relating to a same GPRS service aredistributed in multicast to several mobile stations in a cell at a time,without a waste of radio resources, in one embodiment of the presentinvention;

FIG. 3 is a schematic flowchart illustrating the operation of the GPRSnetwork of FIG. 1, in respect of a generic multicast service;

FIG. 4A is an exploded, more detailed pictorial representation of thestructure of a GPRS radio data block, evidencing how users of a samemulticast service are rendered distinguishable and individuallyaddressable by the network apparatuses, in an embodiment of the presentinvention;

FIG. 4B shows a similar, exploded representation of the structure of aradio data block according to a EGRPS standard (for GMSK code schemesMCS1-MCS4);

FIG. 5 is a schematic flowchart illustrating a MS-selective data receiptacknoweldge/unacknowledge scheme according to an embodiment of thepresent invention;

FIG. 6 schematically shows, in terms of functional blocks relevant tothe understanding of the exemplary invention embodiment hereinconsidered, a mobile station adapted to exploit a multicast GPRSservice;

FIG. 7 is a pictorial representation of the MS-selective data receiptacknoweldge/unacknowledge scheme depicted in FIG. 5;

FIGS. 8A and 8B schematically show, in terms of exchanged messages, twoalternative procedures for assigning resources to MSs when a multicastGPRS service starts to be delivered.

DETAILED DESCRIPTION OF THE INVENTION

With reference to the drawings and, particularly, to FIG. 1, a cellularmobile communications network 100, particularly a GSM network, isschematically shown.

The mobile communications network 100 comprises a plurality of BaseStation Subsystems (BSSs), each one providing coverage for cellularcommunications in a respective geographic region.

The generic BSS comprises a plurality of Base Transceiver Stations(BTSs), each one covering a respective geographic area within the regioncovered by the BSS; the number of BTSs in a BSS may be in the practicerather high but for simplicity of the drawing, only four BTSs BTS1,BTS2, BTS3 and BTS4 (pictorially represented by an antenna) with anassociated cell CELL1, CELL2, CELL3 and CELL4 (schematically depicted asan area surrounded by a dashed circle) are shown in FIG. 1. The genericBTS communicates with users' Mobile Stations (MS), typically cellularphones, which are located in the BTS's cell, such as the MSs MS1 and MS2within the cell CELL1, the MS MS3 within the cell CELL2, the MS MS4within the cell CELL3 and the MSs MS5, MS6 and MS7 within the cellCELL4.

Typically, a plurality of BTSs are connected to a same Base StationController (BSC), a network unit that controls the BTSs; for example,all the BTSs of a same BSS are connected to a same BSC, such as, makingreference to FIG. 1, the BSC BSC1 to which the BTS BTS1 is connected,and the BSC BSC2 to which the other three BTS BTS2, BTS3 and BTS4 areconnected. Roughly speaking, the BTSs handle the actualtransmission/reception of signals to/from the MSs, whereas the BSCsinstruct the different BTSs about which data have to be transmitted onspecified physical, radio communication channels.

FIG. 1 schematically depicts network elements that, according to theGPRS standard, enable the MSs, connected to the cellular mobilecommunications network 100, to access an external packet-based datacommunications network (shortly, a packet data network) such as, forexample, the Internet and/or an Intranet, more generally any datacommunications network in which data are exchanged in packets, i.e.according to a packet-switched scheme instead of a switched-circuit one,particularly but not limitatively any network adopting the InternetProtocol (IP). In the drawing, the external packet data network is shownonly schematically, and it is identified globally by 105; hereinafter,it will be assumed that the external packet data network 105 is theInternet, but this is not to be intended as a limitation, being merelyan example.

Without entering into excessive details, known per-se in the art and notrelevant to the understanding of the invention embodiment hereindescribed, at least one Gateway GPRS Support Node (GGSN) GGSN isprovided to act as an interface between the cellular network 100 and oneor more external packet data network, such as the Internet 105. The GGSNGGSN exchanges data packets, through a GPRS backbone network 110, withone or more Serving GPRS Support Nodes (SGSN), such as the two SGSNsSGSN1 and SGSN2 shown in the drawing. The generic SGSN is associatedwith one or more respective BSSs, and routes the data packets received,through the GGSN (or one of the GGSNs, if more than one GGSN exist) andthe GPRS backbone network, from the external packet-based communicationsnetwork (or one of the external. packet-based communications networks),to the proper destination MS, located in the geographic area covered bythe respective BSS (or by one of the respective BSSs); for example, theSGSN SGSN1 routes the data packets received, through the GGSN GGSN andthe GPRS backbone network 110, from the external packet-basedcommunications network 105 to the MS MS1 and/or the MS MS2.

In particular, the generic SGSN keeps track of the geographical locationof the MSs, so as to know whereto the data packets are to be routed inorder to be delivered to the intended destination MS. In particular,depending on the fact that the MS is actively exchanging data (acondition referred to as READY status) or not (a condition referred toas STAND-BY) the geographical location of which track is kept at theSGSN may be a specific network cell, or a larger area represented by agroup of cells, referred to as a “routing area”. In other words, thegeneric SGSN is aware of which cell/routing area the destination MS iscurrently located. It is observed that a single SGSN may communicatewith a plurality of GGSN, for receiving data packets from differentexternal packet data networks.

In order to provide data packet-based communications services, each BSCis associated with a respective Packet Control Unit (PCU), notexplicitly shown in the drawing because intended as part of the BSCs.The PCU behaves as an interface of the BSC to a packet-based datacommunications network 115 internal to the cellular network 100 andconnecting the BSC to a respective SGSN, such as the SGSN SGSN1 for theBSC BSC1 and the SGSN SGSN2 for the BSC BSC2. The PCU converts the datapackets, received from the respective SGSN through the internalpacket-based data communications network 115 and directed to thedestination MS, into data streams adapted to being transmitted “over theair”, by one of the BTSs, exploiting the radio resources of the network.Furthermore, data streams transmitted by the MS “over the air” andreceived by the BTS are converted into data packets formatted accordingto the protocol supported by the internal packet-based datacommunications network 115, for transmission to the respective SGSN, inthe drawing the SGSN SGSN1 or SGSN2, and to the GGSN GGSN.

Conventionally, the procedure for enabling the user of a generic MSsupporting GPRS communications (a GPRS MS), for example the MS MS1 inthe cell CELL1, to exploit services provided by a service provider orcontent provider 120 (the server) accessible through the Internet 105or, shortly stated, the fruition by a GPRS MS of a GPRS serviceessentially involves two steps: a first step (called Packet DataProtocol—PDP—context activation) in which a logic connection (the PDPcontext) is created between the GPRS MS MS1 and the server 120 providingthe service contents; and a second step (called Temporary BlockFlow—TBF—activation/release) in which the cellular network 100 assignsto the GPRS MS MS1 prescribed physical communication resources, namelyradio resources for transmission on the “over the air” radio linkportion of the cellular network 100.

In particular, without entering into excessive details well known tothose skilled in the art, the GPRS MS MS1 (after having registered atthe SGSN serving the cell CELL1 in which the GPRS MS MS1 is located atthat moment, in the example the SGSN SGSN1) sends to the SGSN SGSN1 arequest for activation of a PDP context; the PDP context defines thepacket data network to be used (in the example, the Internet 105), theGGSN to be used for accessing the Internet 105 (the GGSN GGSN in thepresent example), and other parameters.

The PDP context request triggers a PDP context activation procedure inwhich the MS MS1, the SGSN SGSN1 and the GGSN GGSN exchange informationuseful to negotiate PDP context parameters.

The PDP context activation procedure results in the definition of a datapackets transfer path between the GGSN GGSN and the PCU servicing theBTS BTS1 that covers the cell CELL1 in which the MS MS1 is located. APDP context, i.e. a logic connection between the GPRS MS MS1 and theserver 120 is thus created.

The activation of the PDP context does not involve per-se the allocationof physical communication resources of the cellular network 100, butmerely establishes a logic connection between the GPRS MS and theserver; thus, the PDP context, once activated, may be kept active forhours, in principle forever, even when there are no data to be exchangedbetween the server 120 and the GPRS MS MS1, until the GPRS MS MS1 (or,possibly, the server 120) deactivates it.

After the PDP context has been activated, the BSC BSC1 checks whetherthere are data received from the server 120 through the respective PCUto be transmitted to the GPRS MS MS1; in the affirmative case, i.e. whenthere are data to be exchanged between the server 120 and the GPRS MSMS1, a TBF is activated by the BSC BSC1.

In greater detail, as mentioned in the foregoing, a generic GPRS MS canbe in one of two states, referred to as a READY state and a STAND-BYstate; if in STAND-BY, the competent SGSN is not aware of which cell theMS is in that moment located, but only of the routing area; a pagingmessage is preliminary sent by the SGSN to the MSs within the routingarea, the message including an identifier of the MS of interest; whenthe MS replies to the paging message, the SGSN becomes aware of the cellin which the MS is located, and can properly route the data packetstowards the BSC servicing the MS.

The activation of the TBF determines the allocation of physical radiocommunications resources of the cellular network 100, i.e. of a radiochannel (an airlink channel), to the MS MS1 for enabling the exchange ofthe data packets from the data transfer path (converted in a suitabledata stream by the PCU) through the proper BSC and BTS BSC1 and BTS1over the air to the MS MS1.

When the data have been exchanged, the TBF is deactivated and the radioresources are released; provided the PDP context is not closed, the BSCBSC1 waits for new data to be exchanged. Thus, differently from the PDPcontext, the TBF, i.e. the physical, radio communications resources ofthe GSM network 100 are kept allocated for the MS MS1 only as long asthere are data to be transmitted/received to/from it and are released assoon as the data have been exchanged, keeping the radio resources freefor other uses/users. In other words, a TBF is temporary and ismaintained only for the duration of the data transfer.

According to the GPRS standard, to each TBF an indicator is univocallyassigned, called Temporary Flow Identity (TFI). Roughly speaking, theTFI is exploited for managing the scheduling of the data to betransmitted in downlink (i.e., from the BSC and BTS BSC1 and BTS1 to thedestination MS MS1); different GPRS service users within a same cell areassigned different TFIs. The TFI allows discriminating between differententities at the Radio Link Control (RLC) layer, that is, a given TFIunivocally addresses a respective RLC entity and is inserted in a headerportion of all the RLC data blocks transmitted. Typically, the TFI is afive-bit binary number. When the TBF is activated, a TFI is assignedthereto and such a TFI is communicated to the destination MS MS1 bymeans of the messages exchanged during the access procedure (through aso-called PACKET DOWNLINK ASSIGNMENT message). The TFI is an identifierof the logic connection between the BSC and the MS.

At the physical level, the GPRS is based on the physical layer of theGSM standard.

As known in the art, the GSM standard provides, for the communicationsbetween the BTSs and the MSs, a plurality of radio channels having abandwidth of 200 KHz, associated with a plurality of radio carriers;particularly, 124 radio carriers are provided, and a hybrid FrequencyDivision Multiple Access (FDMA)/Time Division Multiple Access (TDMA)access scheme associates a number, e.g. eight, of time slots (physicalchannels) with each carrier.

The transmission to/from a given MS takes place discontinuously, onlywithin the time slot cyclically assigned to that MS; a cycle is thesuccession in time of all the eight time slots, and is referred to as aradio frame. Once the MS has been granted access to a given carrier thetransmission and reception are accomplished in distinct time slots.

The physical level used by the GPRS system is based on the GSM one,superimposing thereto a different logic structure. Control and datatraffic “logical” channels are multiplexed in time and frequencydivision on a single GPRS physical channel, called Packet Data CHannel(PDCH).

A PDCH corresponds to a physical GSM channel, and is defined, in thefrequency domain, by a radio carrier number (one of the 124 carriers),and, in the time domain, by a timeslot number (one of the eighttimeslots within that carrier). The timing and duration of the timeslotsare identical to those defined for the GSM system.

The control and data traffic GPRS logical channels are multiplexed intime so as to share the same PDCH at physical level.

As pictorially shown in FIG. 2, given a prescribed radio carrier(“CARRIER i^(th)” in the drawing), which is one of 124 radio carriers ofthe GSM standard, the radio frames (each one including eight time slotsTS1 to TS8) are grouped in groups of fifty-two radio frames, so as toform a so-called multiframe, such as the multiframe MFRj depicted in thedrawing. Each multiframe is subdivided into twelve frame blocks, such asthe frame block FRB1 shown in the drawing, including each one four radioframes. Between adjacent triplets of frame blocks, an idle frame IFR isinterposed, left deliberately free of data.

The multiframe periodically repeats every fifty-two radio frames. Thedifferent GPRS control and data traffic logic channels are multiplexedtogether based on a subdivision (an operation referred to assegmentation) into blocks (Radio Data Blocks or RDBs) of the data(received in packets) to be transmitted. The radio data blocks are thebasic transport structure of a GPRS logic channel: a given radio datablock is thus univocally dedicated to a respective GPRS logic channel,being it a data traffic channel or a control channel. The assignmentscheme of the radio data blocks to the different logic channels istransmitted, together with other control information, over a GPRScontrol logic channel PBCCH (Packet Broadcast Control CHannel), having afixed position within the multiframe.

As for voice communications, radio transmission takes place as asequence of four “normal bursts”, according to the GSM standardspecification. Every radio data block, such as the radio data blockRDB_(k) shown in the drawing, is transmitted during four consecutiveradio frames of the same PDCH, such as the frames FR1 to FR4 in thedrawing, exploiting one (possibly more, depending on the radio resourcesallocated to that logic channel, and on the fact that the MS supportsmultislot communications, a feature referred to as the multislot classof the MS) time slot in each frame, such as the timeslot TS3 in thedrawing.

Still according to the GPRS standard, every radio data block includes aheader portion containing the TFI that univocally identifies the TBF, inaddition to other parameters. In this way, two or more traffic flowsbelonging to different users can be multiplexed on a same timeslot, orgroup of timeslots, in downlink or in uplink to or from the MSs.

Each MS in a cell listens to every radio data block transmitted by theBTS on the group of timeslots assigned to the MS; however, an MS beingdestination of GPRS data, that is an MS such as the MS MS1 havingactivated a PDP context, having been assigned a TBF, e.g. TBF₁, andhaving been assigned and communicated a respective TFI, e.g. TFI₁ (inthe practice, the above mentioned five-bit digital code) only capturesthose radio data blocks that, similarly to the radio data block RDB_(k)in the drawing, are labeled by that TFI TFI₁, i.e. by the TFI that haspreviously been communicated thereto, when the TBF was activated; allthe other radio data blocks, not labeled by the correct TFI TFI₁, arediscarded by the MS MS1. The TFI is thus used by the MS substantially asa tuning information, which the MS uses for tuning onto the physicalcommunication channel on which the GPRS data directed to the MS aretransmitted.

In a GPRS network not supporting multicast services, if a different MSin the same cell as the MS MS1, for example the MS MS2 shown in FIG. 1,wishes to exploit, through the GPRS network, the same services madeavailable by the server 120 as those being already exploited by the MSMS1, a procedure identical to that described in the foregoing has to beperformed, leading to the activation of another PDP context and, evenworse, to the activation of different TBFs when data have to beexchanged with the MS MS1, i.e. to the allocation of additional radioresources different from those already allocated by the GSM network 100for the MS MS1. This is clearly a waste of resources, especially whenthe services exploited are relatively heavy in terms of data to bedownloaded to the MSs, such as in the case of delivery of multimediacontents, audio or video (e.g. real-time contents such as for exampletelevision programs) streaming, and the availability of GPRS servicesoffered to the users may be severely limited, unless the GSM networkinfrastructure is greatly overdimensioned.

In order to avoid such a waste of resources, the GPRS network isrendered capable of supporting multicast service data distribution, inthe way described hereinbelow with the aid of the simplified flowchart300 of FIG. 3.

In a way totally similar to the conventional procedure described abovein respect of a generic GPRS service, when the user of a generic MS,e.g. the MS MS1, asks for a certain GPRS service which is offered inmulticast (in the following simply referred to as a multicast service),the MS MS1 activates a standard, unicast PDP context (hencetoforthreferred to as the default PDP context) (block 305). The GSM/GPRSnetwork component BSC1 assigns to the MS MS1 the downlink (i.e., fromthe BCS/BTS to the MS) and uplink (i.e., from the MS to the BTS/BSC)data traffic radio channels, according to standard procedures carriedout at the RLC/MAC levels.

The MS MS1 then retrieves the list of available multicast services froma dedicated server within the packet data network 105, for example (butnot necessarily) the same server 120 offering the multicast services(block 310).

Upon selection by the MS MS1 of one of the available multicast servicesin the list of available services, for example the multicast service“A”, for example a television TV) service, the server 120 communicatesto the MS MS1 an identifier, which can be for example an InternetProtocol (IP) address, e.g. 244.x.y.z, assigned by the server 120 to theMS MS1 (block 315); this same IP address may be used by the server 120to identify a multicast group associated with the GPRS service “A”, i.e.a group of MSs which have requested to exploit/are exploiting themulticast service “A”; such a group is schematically depicted in FIG. 1as a table 130, related to the multicast service “A” and intended toinclude information relating to the users User1, . . . , User7 that haverequested to exploit/are exploiting the multicast service “A”. Theserver 120 may assign to the multicast group 130 a Temporary MulticastGroup Identity (TMGI), which is assigned to the multicast grouptemporarily as long as there is at least one MS in the multicast group.

The MS MS1 then sends an IGMP JOIN message (IGMP: Internet GroupManagement Protocol) over the default PDP context to signal its interestin joining the multicast group related to the selected multicast service“A” (block 320). As known in the art, the Internet Group ManagementProtocol is the standard for IP multicasting in the Internet, used toestablish host memberships in particular multicast groups on a singlenetwork.

As a result, a multicast PDP context is set up by the competent GGSNGGSN (block 325), after having checked that one such multicast PDPcontext is not already active (decision block 323, exit branch N).

In particular, the multicast PDP context may be set up following theguidelines for service activation defined in the already cited 3GPPTechnical Specification No. TS 23.246, v6.1.0.

During multicast PDP context set up the GGSN GGSN performs aregistration procedure to the server 120 (block 330). The server 120gets information about the MS MS1 and stores such information in thetable 130 corresponding to the group for multicast service “A”. The GGSNGGSN stores user information in a table (shown schematically in FIG. 1and identified therein as 135) related to the multicast service “A”(several of such tables may exist at the GGSN, one for each multicastservice for which a multicast PDP context has been set up). Similarly,the competent SGSN SGSN1, responsible of the MS MS1, stores userinformation in a cell-related table (shown schematically in FIG. 1 andidentified therein by 140-1 (140-2 identifies an equivalent cell-relatedtable at the SGSN SGSN2) related to the multicast service “A” (again,several of such tables may exist at the SGSN, one for each multicastservice for which a multicast PDP context has been set up).

The operations that allow the MS MS1 joining the multicast group 130 arecompleted, and the default PDP context that was activated by the MS MS1is linked to the multicast PDP context.

As a part of the operations that lead to the joining of the multicastgroup, the MS MS1 selects a Network Service Access Point Identifier(NSAPI—an index to the PDP context that is using the services providedby the lower layer) having a predetermined value NSAPI_(M) (see FIG. 6),particularly an NSAPI value that has been reserved for multicastservices.

Let it now be supposed that another MS, for simplicity of description anMS located in the same cell as the MS MS1, for example the MS MS2, asksfor a GPRS multicast service.

Similarly to MS MS1, the MS MS2 activates a respective standard unicastPDP context (default PDP Context). The GSM/GPRS network component BSC1assigns to the MS MS2 the downlink and uplink traffic radio channels,according to standard procedures at the RLC/MAC levels (block 305).

As in the previous case, the MS MS2 retrieves from the server 120 thelist of available GPRS multicast services, among which there is themulticast service “A”, for which a multicast PDP context bas alreadybeen set up (block 310). If the MS MS2 selects the multicast service“A”, the server 120 communicates to the MS MS2 the IP address 244.x.y.zof the corresponding multicast group (block 315).

The MS MS2 then sends an IGMP JOIN message over its default PDP context,to signal the interest of the MS MS2 in the GPRS multicast service “A”(block 320).

The GGSN GGSN recognizes that a multicast PDP context for the multicastservice “A” is already active (decision block 323, exit branch Y); thus,the GGSN GGSN does not activate another multicast PDP context, butinstead links the new MS MS2 to the multicast PDP context alreadyexisting for the service “A” (block 350). Exception made for the factthat another multicast PDP context is not activated in the GGSN GGSN,signaling towards the MS MS2 may occur substantially in the same way asdescribed before, following the guidelines for service activationdefined in 3GPP Technical Specification No. TS 23.246 v6.1.0.

The GGSN GGSN stores information related to the new user in the table135 related to the multicast service “A”. Similarly, the competent SGSNSGSN1, responsible of the MS MS1, stores user information in thecell-related table 140-1 related to the multicast service “A”.

The same acts may be performed in case other MSs asks to exploit themulticast service “A”.

After having activated the multicast PDP Context related to service “A”and until the start of the multicast session (i.e., the sending of thedata related to service “A” from the server 120 to the MSs), the MSs canmove, possibly many times, from the READY state to the STAND-BY stateand back, depending on users' activities.

The server 120 initiates the multicast session related to service “A”when it is ready to send data to the subscribers. A multicast sessionmay be set up following the guidelines for session activation defined inthe above-mentioned 3GPP Technical Specification No. TS 23.246 v6.1.0(block 335).

Once the multicast session has been set up, and the server 120 is readyto deliver the multicast service “A”, after a preliminary procedure(that will be explained in the following) by which the users (e.g., theMSs MS1 and MS2) that have registered for receiving the multicastservice “A” are signaled about the imminent start, and the necessaryradio resources are assigned thereto (block 337), the SGSN (e.g., SGSN1)starts forwarding to the BSC (in the example, the BSC BSC1) data trafficrelated to multicast service “A”, on the basis of the information foundin the respective cell-based table 140-1 (block 340). In particular, theSGSN SGSN1 receives data traffic from the GGSN GGSN through a GPRSTunnel Protocol (GTP) tunnel whose Tunnel Endpoint IDentifier (TEID)corresponds to the multicast PDP context “A” (only one GTP tunnel,identified by a unique TEID), is created in respect of a given multicastservice). The SGSN routes the traffic towards the proper (PCU of the)BSC based on a BSSGP Virtual Connection Identifier (BVCI) (in FIG. 1, aBVCI BVCI1 identifies the cell CELL1 under BSC BSC1, a BVCI BVCI2identifies the cell CELL2 under BSC2, and BVCI BCI4 identifies the cellCELL4 under BSC2). The TMGI may be used for univocally identifying thetraffic related to the multicast service throughout the network,including the BSCs and the MSs.

For each network cell, common radio resources are exploited fordelivering data traffic related to the multicast service “A” to all thevarious MSs of the group for the multicast service “A” that are locatedin that cell, and the respective radio parameters are communicated tothe MSs. In particular, a common TFI is assigned by the network andcommunicated to the MSs, such as the TFI TFI₁ that is communicated tothe MSs MS1 and MS2 in cell CELL1. Furthermore, at least one common PDCH(preferably, a plurality of common PDCHs) is assigned by the network andcommunicated to the MSs. The data traffic received at the BSC BSC1 inrespect of the multicast service “A” is thus delivered to the MSs MS1and MS2 (block 345).

As mentioned before, the SGSN SGSN1 forwards the data traffic related tomulticast service “A” on the basis of the information contained in thecorresponding cell-based table 140-1, particularly the BVCI. The genericSGSN scans the respective cell-related table corresponding to themulticast service “A”, and forwards one traffic flow per each cellidentified by the TMGI related to service “A”; for example, assumingthat the MS MS3 in cell CELL2, and the user MS5 in the cell CELL4,activated respective multicast PDP contexts for receiving the multicastservice “A”, the SGSN SGSN2 forwards the traffic relating to such aservice to these users on the shared connection; if other users in therespective cells, for example the user MS7 in the cell CELL4, ask toexploit the service “A”, the respective SGSN, e.g. the SGSN SGSN2, doesnot forward additional traffic, and these other users, e.g. MS7,registered in the SGSN table under the same BVCI, receive the intendeddata traffic because they share the same TMGI and, in the respectivecell (CELL4), the same downlink radio parameters PDCH(s) and TFIassigned for service “A”.

In the Applicant's opinion, it is important to guarantee an adequateperception of the service from the users' point of view. To thispurpose, according to the Applicant it is important that the networkoperation mode, at the RLC/MAC level, be an acknowledged one. This meansthat it is important for the network apparatuses to be able to establishif and to what extent the traffic related to the GPRS multicast servicesis properly received by the MSs of the users.

The above-described method of implementing multicasting in the GPRS/GSMnetwork is particularly effective, and avoids unnecessary duplication,i.e. waste, of network resources, both at the core GPRS network level(no proliferation of data traffic directed to users in a same cell) andat the physical, radio communication level (a same number of radiochannels are occupied, irrespective of the number of users receiving agiven service).

However, as mentioned in the introductory part of the presentdescription, a problem related to the above described implementation ofmulticasting in a GPRS network is that, being all the MSs in a givencell registered to a same multicast service multiplexed on the samePDCH(s) on the downlink and addressed via a same TFI, it is not possiblefor the network apparatuses to address information, on the down link,towards a specific MS of the multicast service group using the TFI.

This impossibility of individually addressing the MSs is, in theApplicant's opinion, a severe limitation, particularly in respect of thedesire of implementing effective retransmission policies based on theacknowledgment/unacknowledgement of the data received by the users.

It is observed that, actually, even in a multicast service deliverycontext such as the one described in the foregoing, each MS involved inthe service might be individually identified, using an identifier calledTemporary Logic Link Identifier (TLLI), which, roughly speaking, is anidentifier of the logic connection established between that MS and thecompetent SGSN. The TLLI is communicated to the MS when the MS registersfor the multicast service. In principle, the TLLI might be used foraddressing specific information towards the MSs. However, the TLLI istypically a relatively long number, for example 32 bits (four bytes)according to the current standards, so that, using the TLLI foraddressing the MSs at the radio link level would mean a great decreaseof available bandwidth for the transmission of data related to themulticast service.

According to an embodiment of the present invention, in order toovercome this limitation, a further parameter identifying the logicconnection between the BSC and the MS (other than the TFI, which iscommon for all the MSs involved in multicast service) is defined andassigned, preferably by the network, to the MSs of a multicast servicegroup, for specifying and, for example, addressing information to aspecific MS among those which, being located in a same cell, receive inmulticast a same GPRS service. In particular, in order to communicatethe further parameter to the MSs, the BSC may compile a cell-based tableof the MSs that have requested a generic multicast service, e.g. theservice “A” herein considered by way of example. Two exemplary tablesare schematically shown in FIG. 1, one for each BSC BSC1 and BSC2, andidentified therein by 145-1 or 145-2. Hereinafter, the further parameterwill be referred to for simplicity as the Mobile Flow Identity (MFI).

According to an exemplary and not limitative embodiment of the presentinvention, a given MS in a cell that belongs to a multicast servicegroup is addressed by the network apparatuses by including therespective MFI (preliminary communicated to the MS according to any oneof the exemplary procedures that will be described later on) in downlinkmessages, for example within a message carrying the multicast servicedata. In particular, a dedicated field may be exploited, which isincluded, when needed by the network apparatuses, in a properly extendedRLC header of a generic one of the RLC/MAC radio blocks.

In greater detail, reference is made to FIG. 4A, wherein a more detailedpictorial representation of the structure of a generic GPRS radio datablock is provided, in an exploded view.

The radio data block, globally identified by 400, includes a MAC header405 and an RLC data block 407, comprised of an RLC header 410 and an RLCdata portion 415, possibly terminating with one or more spare bits 420(used, if necessary, as mere fillers for achieving the prescribed numberof bits in the RLC data portion 415).

The MAC header 405 typically includes a first field 425, a second field430 (Relative Reserved Block Period—RRBP), a third field 435(Supplementary/Polling—S/P), and a fourth field 440 (Uplink StateFlag—USF).

The first field 425 contains information specifying the payload type,and allows identifying if the block is a data block (i.e., a blockcarrying data) or rather a control block (i.e., a block carrying controlinformation sent by the network to the MS). The RRBP field 430, ifactive, is used by the network apparatuses to reserve a single datablock in uplink in which the MS shall transmit a message of the typePACKET CONTROL ACKNOWLEDGMENT or PACKET DOWNLINK ACK/NACK to thenetwork; the value in the RRBP field 430 specifies after how many radiodata blocks a given MS (addressed by the network as described in thefollowing) has to reply. The S/P field 435 is used to indicate to theMSs that a response is required by the network (this field indicateswhether the content of the field RRBP is valid or not). The USF field440 is normally used on the PDCH to allow multiplexing of radio blocksfrom a number of MSs, and enables the coding of eight different USFstates which are used to multiplex the uplink traffic. According tocurrent standards, the MAC header has a fixed, constant length of eightbits.

Differently, the RLC header 410 does not have a constant length, itslength being variable depending on the number of Logic LinkControl-Packet Data Units (LLC-PDUs) transported by the respective radiodata block.

The RLC header 410 comprises, in addition to other fields per-se knownand not relevant to the understanding of the invention embodiment beingdescribed, a field 445 (typically of five bits) containing the TFIlabeling the specific radio data block 400, and one or more octets 450a, . . . , 450 n starting with a Length Indicator (LI) field 455 (of sixbits) that defines the length of a corresponding LLC-PDU in the RLC dataportion 415, a field Extension (E) 460 (of one bit), indicating whetherthere follows an additional octet 450 a, . . . , 450 n in the RLC header410, and a field More (M) 465 (of one bit as well) indicating thepresence of a further LLC-PDU in the Radio data block.

It is observed that the above-described structure of the RLC headerreflects the specifications for the current GPRS standard. In thecurrent specifications for the Enhanced GPRS (EGPRS), also known asEnhanced Data rates for Global Evolution (EDGE), using the 8 PSKmodulation technique to increase the data rate over that typical ofplain GPRS, the structure of the radio data block is slightly different.For example, in FIG. 4B an exploded view of a generic radio data blockaccording to the EGPRS GMSK code schemes MCS1 to MCS4 is provided. Inthis case, the first field 425 of the MAC header 405 contains a part ofthe TFI (the remaining part being included in the field 445 of the RLCheader 410) the RLC data portion 415 of the radio data block 400includes octets 450 a, . . . , 450 n each of which includes a seven-bitLength Indicator (LI) field 455 a, and a one-bit field 465 a, equivalentto the E field 465 of FIG. 4A. Similar structures may be found in theEGPRS GMSK code schemes MCS5 to MCS9.

According to an embodiment of the present invention, the additionalidentifier parameter of the BSC-MS logic connection assigned by thenetwork apparatuses for individually addressing the MSs of a samemulticast group and located in a same network cell, i.e. the MFI, can beformed by a number of bits equal to or higher than those necessary forthe TFI, but roughly of the same order as the TFI, i.e. typically aboutfive bits, a number substantially lower than the number of bits used tocode the TLLI. In preferred embodiments, the MFI is formed by a numberof bits from five to seven.

According to an embodiment of the present invention, the MFI is includedin the RLC data portion 415 of a generic radio data block 400transporting data related to the multicast service being distributed.

In order to include the MFI, the RLC header of a radio data block isproperly extended to obtain an extended RLC header. According to anembodiment of the present invention, the extension of the RLC headernecessary for signaling to the MS that an MFI is included in the RLCheader is accomplished by setting the LI field 455 in one of the octets450 a, . . . , 450 n, to a predetermined value, for example LI=55 inGPRS and LI=75 in EGPRS. The extended RLC header includes therefore anoctet 450 a, . . . , 450 n with the Length Indicator field set to theprescribed value, plus the MFI.

Concerning the way in which the MFI is assigned and communicated by thenetwork to the MSs, some possible MFI assignment procedures arehereinafter described in detail, being however intended that theseprocedures are merely exemplary, and are not to be intended aslimitative for the present invention.

According to a first assignment procedure (FIG. 8A), when the multicastsession (hereinafter, the MBMS session) for the service “A” is going tostart, the generic SGSN, e.g. the SGSN SGSN1, sends an MBMS SESSIONSTART request to the BSSs under its responsibility, such as thatincluding the BSC BSC1, based on the cell/routing area information thatthe SGSN retrieves from the respective table 140-1. This event triggersa sequence of procedures at the radio level, that will be described inthe following.

After the reception of the MBMS SESSION START request, for each MSinvolved in that MBMS session, a PACKET PAGING request is delivered bythe BSC to the MSs.

As mentioned in the foregoing, when the MBMS session is going to start ageneric MS can be in STAND-BY or in READY state; the READY state isfurther characterized by two modes, called PACKET IDLE and PACKETTRANSFER: in the PACKET TRANSFER mode, the MS is exchanging datatraffic, while the PACKET IDLE mode is entered when the data trafficexchange terminates; after a prescribed time interval, the MS moves intothe STAND-BY state.

As far as an MS in STAND-BY state or READY state and packet idle mode isconcerned, the PACKET PAGING request is for example delivered on theCommon Control CHannel (CCCH) (or, if available, on the Packet CommonControl CHannel—PCCCH), and the PACKET PAGING request is followed by anMBMS NOTIFICATION message, including information related to the start ofthe requested MBMS service “A”; upon reception, the MS sends to the BSCa CHANNEL request, for example on the Random Access CHannel (RACH)(alternatively, if the PCCCH is available, the MS may send to the BSC aPACKET CHANNEL request on the Packet Random Access CHannel—PRACH), withpaging response as an establishment cause. The BSC sends an IMMEDIATEASSIGNMENT on the Access Grant CHannel (AGCH) (or, if PCCCH isavailable, a PACKET UPLINK ASSIGNMENT on Packet Access GrantCHannel—PAGCH). The MS is thus assigned a temporary PDCH; on theassigned temporary PDCH, the MS sends the PACKET PAGING response,including its respective TLLI. The BSS delivers the message includingthe TLLI to the competent SGSN.

Slightly differently, an MS in READY state and PACKET TRANSFER mode mayalready have an active downlink TBF or an active uplink TBF, or both. Inthis case, the MS can receive the PACKET PAGING request on, for example,the Packet Associated Control CHannel (PACCH), i.e. the dedicatedcontrol channel associated with the downlink PDCH assigned to the MS.The BSC also sends the MBMS NOTIFICATION message: if an uplink TBF isactive, the MS sends the PACKET PAGING response, including therespective TLLI, which is delivered by the BSC to the SGSN. If an uplinkTBF is not active, the MS can request a concurrent TBF within a firstoccurrence of a PACKET DOWNLINK ACK/NACK message related to the activeservice. The BSC sends a PACKET UPLINK ASSIGNMENT message or a PACKETTIMESLOT RECONFIGURE message to the MS on the PACCH, to assign atemporary PDCH. On the assigned temporary PDCH(s), the MS sends thePACKET PAGING response, including the respective TLLI, which isdelivered by the BSC to the SGSN. The uplink TBF, already active in theformer case or just established for delivering the PACKET PAGINGresponse in the latter case, is kept alive by the MS, for examplesending dummy RLC data blocks if necessary, until the MS receives anMBMS ASSIGNMENT message by the BSC.

The MBMS ASSIGNMENT message can be sent by the BSC on differentchannels, depending on the state of the MSs. In particular, the MBMSASSIGNMENT message can be sent, for example, on the CCCH (or on thePCCCH, if available) for all the MSs in STAND-BY state or in READY stateand in PACKET IDLE mode, while for each MS in READY state and in PACKETTRANSFER mode the MBMS ASSIGNMENT message can be sent, for example, onthe PACCH.

By means of the MBMS ASSIGNMENT message, the BSC performs a resourceallocation for allowing the MSs to exploit the MBMS service. Inparticular, the TFI and the downlink PDCH(s) related to the datatransmission for the requested service “A” are included in the MBMSASSIGNMENT message. Furthermore, a TBF starting time is also included inthe MBMS ASSIGNMENT message, i.e. a parameter allowing the MSsdetermining the time delay between the resource allocation and theresource availability. In particular, the TBF starting time is set to asuitable value, sufficient for reasonably allowing the BSC to deliverthe respective MFI parameter to the MSs, according to a procedureexplained in the following, triggered by the MBMS ASSIGNMENT messageitself.

The MBMS ASSIGNMENT message may in principle be sent once; however,according to an embodiment of the present invention, the MBMS ASSIGNMENTmessage is preferably sent more than once, particularly twice or more,more preferably five times, in order to overcome possible radioimpairments leading to message loss on the MSs side (corresponding to aBLock Error Rate—BLER—equal to 80%).

To get the MFI, on reception of the MBMS ASSIGNMENT message, each MSinvolved in the specified MBMS session that entered in STAND-BY state orin READY state and in PACKET IDLE mode before the reception of themessage, performs a one-phase access procedure on the CCCH (or on thePCCCH, if available), in order to get radio resources for a furtheruplink temporary TBF, e.g. via an IMMEDIATE ASSIGNMENT (PACKET UPLINKASSIGNMENT if PCCCH is available). On the assigned temporary uplink TBF(which is characterized by a respective TFI, hereinafter referred to asUPLINK_TFI), the MS sends dummy RLC data blocks, with an extended RLCheader including its TLLI, for contention resolution and identificationpurposes, and furthermore including the TMGI of the service “A”; the RLCheader extension may be accomplished by setting predefined values in theLI field of the RLC header (in one of the octets 450 a, . . . , 450 n ofthe RLC data block), such as, for example, LI=56 in GPRS and LI=76 inEGPRS. The extended RLC header will therefore include LengthIndicator(s)+TLLI+TMGI.

An MS, involved in the specified MBMS, which is in READY state andPACKET TRANSFER mode before the reception of the MBMS ASSIGNMENTmessage, on reception of such a message sends, on the already availableuplink TBF (which is characterized by an UPLINK_TFI), and, RLC datablocks, possibly dummy, with the same extended RLC header as describedabove (including the MS's TLLI and the TMGI related to the service “A”).

As soon as the BSC receives from one of the MS the first correct RLCdata block including the UPLINK_TFI plus the TLLI plus the TMGI, the BSCsends a PACKET UPLINK ACK/NACK message to that MS, addressing it via theUPLINK_TFI and a content-resolution TLLI (i.e., a TLLI selected by theBSC from all those received, according to a contention resolutionprocedure), further including in the message the TMGI received from theMS. With this message, the BSC communicates the assigned MFI to the MS.According to an embodiment of the present invention, together with theMFI, additional parameters used for synchronizing the radio transmissionare sent with this message, for example a Timing Advance Index (TAI) anda Timing Advance Timeslot Number (TA_TN), used for allowing the MS toperform a Timing Advance (TA) procedure. Such additional parameters areindividually assigned by the BSC to that specific MS, and for thisreason will be referred to as MFI_TAI and MFI_TA_TN.

Without entering into excessive details, known per-se, the TA procedureis a procedure by means of which the BSC gets information about thedistance of a generic MS from the BTS, and thus of the propagation delayof the radio signal from the BTS to the MS, and communicates to the MSinformation adapted to let the MS synchronize with the transmission. TheTAI is an index assigned by the BSC to the MS, while the TA_TN is aparameter specifying which timeslot carries the synchronizationinformation; when the MS recognizes its own TAI in a received datablock, it looks at the timeslot specified by the TA_TN parameter andgets the TA synchronization parameter.

The fields that are sent by the BSC to the MS via the PACKET UPLINKACK/NACK message, i.e. the TMGI, the MFI, the MFI_TAI, and the MFI_TA_TNare for example included in the message using padding bits.

Once the MS has received from the BSC the PACKET UPLINK ACK/NACK messageincluding the triplet {MFI, MFI_TAI, MFI_TA_TN}, the MS starts acountdown procedure, at the end of which the temporary uplink TBF isreleased. The countdown procedure is directed to acknowledge the BSCabout the correct reception of the triplet {MFI, MFI_TAI, MFI_TA_TN} bythe MS, and, correspondingly, to make the MS aware of the fact that theBSC has acknowledged such correct reception. Roughly speaking, thecountdown procedure may involve, from the MS side, sending to the BSC,for a prescribed number of times, e.g. 10 times, data blocks includingthe same parameters received from the BSC, i.e. the triplet {MFI,MFI_TAI, MFI_TA_TN}, which are interpreted by the BSC as a confirmationof the reception, and looking for a counter-reply from the BSC.

In greater detail, the parameters sent from the MS to the BSC may beincluded in extension fields of the RLC data block header, the extensionbeing accomplished setting the field LI in one of the octets 450 a, . .. , 450 n to a first predefined value (for example, LI=55 for GPRS;LI=75 for EGPRS) for including the MFI, and setting the field LI inanother octet to another predefined value (for example, LI=59 for GPRSand LI=79 for EGPRS) for including the MFI_TAI and the MFI_TA_TN). Ifthe BSC does not receive at least one of these RLC data blocks includingthe assigned {MFI, MFI_TAI, MFI_TA_TN} from the MS within a prescribedtime interval, the BSC sends again the PACKET UPLINK ACK/NACK message tothe MS, with the same fields included in the first transmission, i.e.the BSC re-sends the triplet of parameters {MFI, MFI_TAI, MFI_TA_TN}.

Once the uplink TBF has been released, both the MS and the BSC store thetriplet {MFI, MFI_TAI, MFI_TA_TN} to be used by that MS and by the BSCduring the MBMS session. In particular, the BSC stores, for each MS, thetriplet {MFI, MFI_TAI, MFI_TA_TN} in a table (identified as 145-1 forthe BSC BSC1, and 145-2 for the BSC BSC2 in FIG. 1), in association withthe TLLI of that MS.

The procedure described above is repeated for all the MSs involved in aspecified service, e.g. the service “A”. With such procedure, the BSCbecomes aware of the number of MSs involved in the reception of theservice “A”, and may address information to such MSs, exploiting the MFIidentifier. For example, efficient ack/nack procedures may be set by theBSC.

It is observed that, in practice, the values available for the parameterMFI are limited: for example, if the parameter MFI is represented by afive-bit digital code, thirty-two values are available. In preferredembodiments, the procedure described above may be repeated until thelast but one valid MFI value is available on the BSC side. Then, thelast available MFI value is assigned to all the remaining MSs as adefault, fake MFI (hereinafter MFI_fake), in the PACKET UPLINK ACK/NACKmessage sent by the BSC to each of these MSs; however, differently fromthe messages sent to the previous MSs, within these messages the fieldsMFI_TAI and the MFI_TA_TN are not included.

It is observed that the list of MSs which are addressed by the BSC doesnot necessarily remain the same for the whole MBMS session, and it canbe modified during the MBMS session, with exits of some or all of theMSs previously present and entries of new MSs, for example chosen fromthe pool of MSs counted by the BSS and to which the MFI_fake wasassigned. If, during the MBMS session, a triplet {MFI, MFI_TAI,MFI_TA_TN} is freed and becomes available on the BSC side for a new MS,the default parameter MFI_fake and the respective TLLI may be used bythe BSC to address a specific MS, in order to assign thereto theavailable triplet {MFI, MFI_TAI, MFI_TA_TN}.

Similarly to the previous MSs, once each MS exceeding the last but onevalid MFI value available on the BSC side has received the PACKET UPLINKACK/NACK message including the parameter MFI_fake, it start thecountdown procedure at the end of which the uplink TBF is released. Thecountdown procedure is accomplished as described in the foregoing: theMS includes the MFI_fake in all the following RLC data blocks sent tothe BSC by way of reception confirmation, in order to notify the BSS ofthe correct reception of this field. The extension of the RLC data blockheader can be for example accomplished setting, in one of the RLC headeroctets, a predefined value, such as for example LI=57 for GPRS and LI=77for EGPRS. If the BSC does not receive at least one RLC data blockincluding the assigned default MFI_fake from the MS within a prescribedtime limit, the BSC sends again the PACKET UPLINK ACK/NACK message tothe MS, with the same fields included in the case of the firsttransmission.

Once the uplink TBF has been released, both the MS and the BSC store theMFI_fake. The BSC stores the MFI_fake in the respective table 145-1 or145-2, in association with the TLLI of that MS.

If a generic MS (with “real” MFI or with MFI_fake) does not succeed inreleasing the uplink TBF before the MBMS session TBF starting time(i.e., before the MBMS resources become available), that MS switchesanyway to the assigned PDCH(s) for the multicast service at the timespecified by the TBF starting time.

According to an embodiment of the present invention, the procedurehereinafter described is followed.

For example, the uplink TBF couldn't be released because the MS did notreceived the expected PACKET UPLINK ACK/NACK messages from the BSCbefore the TBF starting time, so that such MS did not receive arespective triplet {MFI, MFI_TAI, MFI_TA_TN}. In such case, if the MSsucceeded in sending at least one RLC data block including therespective TLLI and the TMGI to the BSC, the MS assumes, by default, theMFI_fake. On the other hand, if the BSC has received from that MS atleast one RLC data block including the TLLI and the TMGI, the BSCassociates (in the table 145-1, or 145-2), by default the MFI_fake tothe TLLI of that MS, regardless of the fact that the BSS succeeded ornot in sending a PACKET UPLINK ACK/NACK message to that MS and, in caseit succeeded, regardless of the fact that the PACKET UPLINK ACK/NACKmessage included the triplet {MFI, MFI_TAI, MFI_TA_TN} or the defaultMFI_fake. In the other cases the BSC is not aware of this MS involved inthe multicast service.

Differently, if the MS has received from the BSC a PACKET UPLINKACK/NACK message including the triplet {MFI, MFI_TAI, MFI_TA_TN} or thedefault MFI_fake before the TBF starting time, but the countdownprocedure didn't complete properly, the MS anyway stores the MFI_fake,regardless of the fact that it succeeded or not in sending to the BSC atleast one following RLC data block including the received triplet {MFI,MFI_TAI, MFI_TA_TN} or the default MFI_fake, respectively. On the otherhand, the BSC associates (in the respective table 145-1 or 145-2) thedefault MFI_fake to the TLLI of that MS.

Exemplarily, FIG. 1 shows the table 145-1 held by the BSC BSC1,including the radio parameters of the downlink radio connections for theMSs MS1 and MS2, in particular, the TFI identifying the radio datablocks through which the (E)GPRS multicast service is multicast indownlink through the cell CELL1, and, for each MS, the TLLI, in additionto further parameters, particularly the MFI for that MS, preferably thetriplet {MFI, MFI_TAI, MFI TA_TN}, or the MFI_fake.

For the sake of completeness, it has to be observed that if an MSinvolved in the multicast service was not able to establish an uplinkTBF after the reception of the MBMS ASSIGNMENT message from the BSC andbefore the TBF starting time, the MS may anyway switch to the assignedPDCH(s) for the multicast service at the time specified by the TBFstarting time. In such case, such an MS does not have a triplet {MFI,MFI_TAI, MFI_TA_TN}, nor the default MFI_fake. Moreover, the BSC is notaware of this MS involved in the multicast service. However, such an MSmay anyway enjoy the multicast service.

In the MFI assignment procedure described above, the MFI (and the otherparameters for TA update) are communicated by the BSC to the MSs onrequest of the latter ones, which, after receiving the MBMS ASSIGNMENTmessage from the BSC, have to send to the BSC a request message beforethe data traffic related to the multicast service starts to bedelivered. Also, the BSC is substantially transparent to the initialPACKET PAGING response from the MSs, which is directed to the competentSGSN.

An alternative MFI assignment procedure, in which the response to thePAGING is directly captured by the BSC, may be the following (FIG. 8B).

When the multicast session is going to start, the PACKET PAGING requestto the MSs is triggered by the SGSN to the BSC(s). As far as an MS inSTAND-BY state or in READY state and PACKET IDLE mode is concerned, onreception of the PACKET PAGING request, for example on the CCCH (or onthe PCCCH if available), and of the MBMS NOTIFICATION message, that MSsends a CHANNEL Request on the RACH (or a PACKET CHANNEL request on thePRACH, if the PCCCH is available). The BSC sends an IMMEDIATE ASSIGNMENTon the AGCH (or a PACKET UPLINK ASSIGNMENT on the PAGCH, if the PCCCH isavailable). On the assigned temporary PDCH, the MS sends to the BSC aMBMS SERVICE request including in the message the respective TLLI andthe TMGI identifying the multicast group. The temporary uplink TBFestablished for delivering the MBMS SERVICE request is kept alive by theMS, sending dummy RLC data blocks if necessary, until the MS receivesfrom the BSC a PACKET UPLINK ACK/NACK message including the MFI,preferably the triplet {MFI, MFI_TAI, MFI_TA_TN}, or the MFI_fake,assigned by the BSC to that specific MS.

As far as an MS in READY state and PACKET TRANSFER mode is concerned,such an MS may already have an active downlink TBF or an active uplinkTBF or both. The MS may receive the PACKET PAGING request on thedownlink PACCH (the downlink packet control channel associated with thedownlink PDCH of that MS). The BSC also sends the MBMS NOTIFICATIONmessage. If an uplink TBF is already active, the MS sends the MBMSSERVICE request, including its TLLI and the TMGI, to the BSC. In thenegative case, the MS can request a concurrent TBF within a firstoccurrence of a PACKET DOWNLINK ACK/NACK message related to the activeservice; the BSC sends a PACKET UPLINK ASSIGNMENT or a PACKET TIMESLOTRECONFIGURE to the MS on the PACCH; on the assigned PDCH(s) the MS sendsthe MBMS SERVICE request, including its TLLI and the TMGI, to the BSC.The uplink TBF, already active in the former case or just establishedfor delivering the MBMS SERVICE request in the latter case, is keptalive by the MS, sending dummy RLC data blocks if necessary, until theMS receives a PACKET UPLINK ACK/NACK message including the triplet {MFI,MFI_TAI, MFI_TA_TN}, or the MFI_fake, assigned by the BSC to thatspecific MS.

As soon as the BSC receives the MBMS SERVICE request from an MS, the BSCsends a PACKET UPLINK ACK/NACK to that MS, addressing it via therespective UPLINK_TFI and the contention-resolution TLLI, and includingthe TMGI received from the MS, as well as the triplet {MFI, MFI_TAI,MFI_TA_TN} assigned by the BSS to that specific MS; these fouradditional fields (TMGI, MFI, MFI_TAI, MFI_TA_TN) may be included, forexample, using padding bits inside the PACKET UPLINK ACK/NACK message.

Once the MS has received the PACKET UPLINK ACK/NACK message includingthe triplet {MFI, MFI_TAI, MFI_TA_TN}, it starts the countdown procedurein order to release the uplink TBF. This is carried out as described indetail with reference to FIG. 8A.

The above procedure is repeated for all the MSs involved in a specifiedmulticast service, and at most until the last but one valid MFI value isavailable on the BSC side. If more MSs are involved, within a singlecell, in the specified MBMS, the last available MFI value is assigned toall these MSs as a default MFI_fake in the PACKET UPLINK ACK/NACKmessage sent to each of these MSs; these PACKET UPLINK ACK/NACK messagesdo not include the MFI_TAI and the MFI_TA_TN fields. A similar countdownprocedure is started by each MS that has received the MFI_fake.

The BSC then sends the MBMS ASSIGNMENT message, including the TFI, thePDCH(s) and the TBF starting time of the service “A”, for example on theCCCH (or on the PCCCH if available), for all the MSs in STANDBY state orin READY state and in PACKET IDLE mode, or on the PACCH for each MS inREADY state and in PACKET TRANSFER mode. As explained before, the MBMSASSIGNMENT message may be preferably sent more than once, for examplefor five times, in order to overcome potential radio impairments leadingto message loss on the MSs side.

If the uplink TBF used for delivering the MBMS SERVICE request is notreleased before the TBF starting time included in the MBMS ASSIGNMENTmessage, the MS anyway switches to the assigned PDCH(s) for themulticast service at the time specified by the TBF starting time. Aprocedure similar to that described with reference to FIG. 8A may befollowed.

It can be appreciated that in this alternative MFI assignment procedure,the MSs reply to the paging request by a MBMS SERVICE request, to whichthe BSC automatically replies communicating the MFI (and, preferably,the additional parameters MFI_TAI and MFI_TA_TN) to the MSs; this isdone before the assignment of the resources for the multicast service.The MBMS SERVICE request stops at the BSC, so that the BSC may directlyperform the count of the MSs involved in the multicast service “A”. Onthe other hand, the SGSN is in this case not aware of which MSs of themulticast service group are at a given time actually exploiting theservice.

As a further alternative (FIG. 8B, dash-and-dot line), once an MS hassent the MBMS SERVICE request, including its TLLI and the TMGI, to theBSC, the BSC additionally delivers the MBMS SERVICE request thecompetent SGSN, which is thus made aware of which MSs are exploiting theservice.

Any one of the above described procedures allows the BSC to perform boththe counting and the individual addressing of the MSs involved in aspecified multicast service, e.g. the service “A” (characterized by aTMGI TMGI-A). Thus, the BSC is aware of the number of users involved inthe multicast service, and can selectively update the timing advance forthe different MSs, in addition to implementing effective retransmissionspolicies. During the MBMS session, the MFI assigned and communicated toa given MS is used by the BSC to address information to that MS;similarly, the MS uses the MFI assigned and communicated thereto forallowing the BSC recognizing that MS among all the MSs involved in thatMBMS session. During the MBMS session, the MFI_TAI and the MFI_TA_TN areused by the MS and by the BSC for the continuous TA update procedure.The TN specified by MFI_TA_TN identifies one PDCH belonging to the setof PDCHs allocated for that MBMS session. It is noticed that up tosixteen MSs may be addressed on the same PDCH, since up to sixteen MSsmay adjust the TA on the same PDCH via MFI_TAI, with a standardcontinuous TA update procedure.

Concerning the users to which the default MFI_fake has been assigned,the BSC can count the exceeding MSs, even if it can not individuallyaddress them, either for the retransmissions management or for TAupdate. However, even the mere counting of such MSs may be of help inorder to correctly tune retransmission policies in an ack/nackprocedure. For example, if continuous retransmission of radio datablocks is needed from an MS to which a “real” MFI value has beenassigned, the BSC may recognize that the reception quality of such MS isvery poor. For example, the MS may be located on the border of the cell,a fact that may be also checked from the values of the additionalparameters MFI_TAI and MFI_TA_TN. Thus, the BSC may decide to “free” thealready assigned MFI, e.g. by assigning to such MS the MFI_fake, and toassign the available MFI value to one of the MSs to which the MFI_fakewas previously assigned (by addressing this MS using its TLLI), in orderto gain efficiency of the retransmission policy.

The provision of the parameter MFI in addition to the TFI gives rise toa global address parameter, or global identifier {TFI,MFI}, that allowsthe network apparatuses, namely the generic BSC, to address a specificMS among those involved in the multicast service “A” inside a specificnetwork cell.

The possibility of individually addressing the MSs in a cell even ifthey belong to a same multicast group opens the way to several differentexploitations, and in particular enables the network to implement anefficient multicast data retransmission policy based on theACKnowledgment/uNACKnowledgement (ACK/NACK) of the received data by theMSs.

An ACK/NACK-based retransmission policy according to an embodiment ofthe present invention will now be explained in detail, with the aid ofthe schematic flowchart of FIG. 5.

In order to better understand the ACK/NACK-based retransmission policy,reference is made to FIG. 6, schematically showing, in an extremelysimplified way and in terms of functional blocks relevant to theunderstanding of the exemplary invention embodiment herein considered, ageneric MS such as the MS MS1. As known, an MS comprises, in addition tospecific elements allowing radio communications, a programmable dataprocessing unit, particularly a microprocessor, with dynamic andnon-volatile memory resources, and strictly interacting with aSubscriber Identity Module (SIM), which is a removable smart-card modulehaving its own data processing and storage capabilities. It is intendedthat at least some of the functions that will be described areimplemented in terms of software run by the data processing units of theMS and/or of the SIM.

The MS MS1 comprises a physical layer unit 605 handling the low-level(physical level) details of the radio communications, compliant to theGSM standard; this unit comprises in particular the transmitter/receivercircuits of the MS.

The physical level unit 605 communicates with an RLC/MAC (Media AccessControl) level unit 610, managing the communications at the immediatelyhigher RLC/MAC level of the ISO OSI model, particularly controlling theaccess of the MS to the physical communication medium. In extremelysimplified terms, sufficient for the purposes of the presentdescription, the RLC/MAC level unit 610 receives the radio data blocksfrom physical level unit 605, and reconstructs the various GPRS logicchannels mentioned in the foregoing. In particular, the RLC/MAC levelunit compares (as schematized by the AND logic gate 615) the TFIlabeling the received radio data blocks to the locally-stored tuning TFITFI₁, which the MS uses for establishing whether the radio data blocksare directed thereto, and are therefore to be captured and retained, ordiscarded. If the TFI labeling the received radio data blocks does notcoincide with the tuning TFI TFI₁, the radio data blocks are discarded(as schematized by the switch 620 open), otherwise they are captured,the data traffic channel is reconstructed, and the data are passed overto the higher levels of the OSI model 625, up to the OSI applicationlayer.

The received data relating to the GPRS service are then passed to anapplication software 630, such as a content viewer or an MP3 player orthe like and, through the proper I/O peripheral (display, loudspeaker,headphones), are made available to the user (alternatively, or incombination, the data may be stored in a local storage of the MS, for abackground fruition).

As schematized by a switch 635, depending on whether or not the fieldS/P 435 in the received radio data block is set, and the LI field 455(or 455 a) in one of the octets 450 a, . . . , 450 n is set to one ofthe predetermined values, the MFI is extracted from the received radiodata block, and compared (as schematized by the AND logic gate 640) to alocally-stored, personal MFI MFI₁, received from the BSC e.g. throughone of the assignment procedures described above. In case ofcoincidence, an ACK/NACK manager 640 manages the ACK/NACK operations.

Back to the flowchart 500, at the start of the MBMS session the networkapparatuses assign to each MS (belonging to a multicast service group) arespective MFI, as described in the foregoing, univocally identifyingthe MS. The generic MS thus knows which is the respective MFI that thenetwork (namely, the BSC) has univocally assigned thereto.

Let it now be assumed that the generic BSC of the network, for examplethe BSC BSC1, wants to address a specific one of the MSs under itsresponsibility, which are located in a same cell and are at the timereceiving a same multicast service, in the example one among the MSs MS1and MS2 in the cell CELL1, e.g. the MS MS2, in respect of the service“A”.

The BSC BSC1 sets the LI field 455 a in one of the octets 450 a, . . . ,450 n within the RLC header 410 of a generic RLC/MAC block 400, sent onthe downlink to the predetermined value, e.g. 75), and sets the fieldMFI 470 with the desired MFI, corresponding to the MS to be addressed,retrieved from the table 145-1.

Such a block 400 may for example be one of the radio data blocksdelivering the data relating to the multicast service “A”.

Additionally, the BSC BSC1 sets the S/P field 435 and RRBP field 430within the MAC header 405 of that RLC/MAC block 400.

All these operations are schematized by action block 505 in theflowchart 500.

In this way, the network apparatuses address the specific MS MS2, viathe respective global identifier {TFI,MFI} in the radio data block RLCheader 415, and instruct the addressed MS MS2 to send a PACKET DOWNLINKACK/NACK message on the uplink to the BSC BSC1, at a time specified inthe RRBP field 430.

It is observed that the network ACK/NACK request period shall beproperly selected, in order to avoid stall conditions of the transmitwindow on the BSC side. In particular, the request period depends onGPRS or EGPRS use, the number of PDCHs allocated to the MBMS session,the window size in case of EGPRS, the number of MSs involved in the MBMSsession, the BS_CV_MAX and the RRBP values. With an appropriateselection of the parameters, it is possible to receive the PACKETDOWNLINK ACK/NACK message from the maximum number of MSs which can bemultiplexed on a PDCH and controlled via the continuous TA updateprocedure, i.e. 16, still avoiding a stall condition of the transmitwindow on the BSS side. In such a way, all the MSs having been assigneda respective triplet {MFI, MFI_TAI, MFI_TA_TN} can periodically send thePACKET DOWNLINK ACK/NACK message.

Back to the flowchart 500, the generic MS in the cell CELL1 reads theRLC header 410 of the radio data block 400 transmitted in the downlink,and extracts the TFI (block 510).

The generic MS then checks whether the extracted TFI coincides with theone previously communicated thereto by the BSC (decision block 515).

In the negative case (exit branch N of decision block 515), the MSdiscards the radio data block (block 520).

In the affirmative case (exit branch Y of decision block 515) the MSchecks (decision block 525) whether the S/P field 435 in the MAC header405 is set, and the LI fields are set to the predetermined values (LI=55for GPRS or LI=75 for EGPRS), indicating that the network is addressinga specific MS to request an ACK/NACK therefrom. In the negative case(exit branch N of decision block 525), the MS processes the receivedradio data block as usual, particularly for retrieving the RLC data(block 530). In the affirmative case (exit branch Y of decision block525), the MS reads the field MFI 470 (the presence of which is signaledto the MS by the fact that the fields LI in the RLC header store thepredetermined value 55 (GPRS) or 75(EGPRS)), to retrieve the MFI valuestored therein (block 535).

The MS then checks whether the retrieved MFI coincides with the storedMFI, previously communicated to the MS by the BSC (decision block 540).In the negative case, the MS processes the received radio data block asusual (block 530), otherwise (exit branch Y of decision block 540) theMS understands that it has been addressed by the network and requestedto perform an ACK/NACK of the received data.

The MS MS2 addressed via the global identifier {TFI,MFI} in the waydescribed above sends the PACKET DOWNLINK ACK/NACK message in the uplinkradio block period specified by the value in the RRBP field 430 (block545). The MS may include its MFI in the PACKET DOWNLINK ACK/NACK messageusing part of the padding bits of the message, in order to let the BSCdetect the correct identity of the responding MS. For example, thePACKET DOWNLINK ACK/NACK message may be sent to the BSC on the uplinkPACCH, common to all the MSs involved in the MBMS session, which is theassociated control channel associated with the downlink PDCH(s) used todeliver the multicast service to the MSs.

Without entering into details well known to the specialists, the PACKETDOWNLINK ACK/NACK message has a standard format and a predefined length(typically, 160 bit), and, among the other fields, includes the TFI ofthe sender MS, and an ACK/NACK description comprising a map of thereceived data blocks (the so-called Received Block Bitmap—RBB) useful toprovide the BSC with an indication on the correct reception of the datablocks in a transmit window.

The MS MS2 includes the personal MFI MFI₂ in the PACKET DOWNLINKACK/NACK message; in this way, when the BSC BSC1 receives the message,it is capable (referring to the table 145-1) to assess the correctidentity of the responding MS MS2 among those of the multicast groupwithin the same cell CELL1, sharing the same TFI TFI₁. In particular,part of the so-called padding bits normally provided in the message (forachieving the predetermined message length of 160 bits) are exploited toinclude the MFI in the PACKET DOWNLINK ACK/NACK message (asschematically depicted in FIG. 7).

The BSC BSC1 processes (block 550) all the PACKET DOWNLINK ACK/NACKmessages received within a request period from all the MSs involved in aspecific multicast service, and with an assigned individual triplet{MFI, MFI_TAI, MFI_TA_TN}, in the example the MSs MS1 and MS2 as far ascell CELL1 is concerned, in respect of service “A” (a similar polling isperformed on the MSs of other cells under the responsibility of theBSC).

Based on the ACK/NACK messages received from the MSs, the BSC implementsa retransmission policy of the data relating to the multicast service“A” to the MSs (block 555).

Several retransmission policies can be implemented at the BSC level, thespecific nature of the retransmission policy being per-se not limitativeof the present invention.

In particular, and just by way of example, two types of retransmissionpolicies are feasible, defined exhaustive and selective, respectively.

In the exhaustive retransmission policy, all the radio data blocksreferred to as not acknowledged (shortly, nacked) in the RBB of theACK/NACK description in any received PACKET DOWNLINK ACK/NACK messageare retransmitted. In such a case, the delay due to the retransmissionscould be remarkable; it is therefore necessary to correctly evaluate thebuffer size of the application software 630 resident in the MS andallowing the user to exploit the received service (e.g. a TV viewer,and/or music multimedia player), in order to avoid/minimize potentialservice interruptions.

The procedures at the RLC level on the network side needs to bemodified, compared to standard procedures, in order to periodically setthe start of the transmit window corresponding to the least recent radioblock not yet positively acknowledged among all the received PACKETDOWNLINK ACK/NACK messages, and not on a single PACKET DOWNLINK ACK/NACKmessage basis.

In the selective retransmission approach, the retransmission may bebased on the overall number of nacked radio data blocks, on a thresholdrelevant to the percentage of MSs requesting the retransmission of aspecific radio data block, and, possibly, on the MFIs of the MSsrequesting the retransmissions (for example, in order to take intoaccount for MSs possible located in areas of a cell of scarce coverage).

The impact on procedures at the RLC level within the MSs is higher thanin the previously discussed case. In particular, in order to supportsuch a retransmission scheme, the generic MS shall be capable ofadvancing the receive window even if that MS did not correctly receivethe least recent radio block not yet received within a specifiedtimeout; for example, the missing radio blocks should be replaced byall-zero fill bits payload radio blocks. The same impact applies alsofor all the MSs which are not included in the list of the individuallyaddressable MSs, i.e. those which are not allowed to send PACKETDOWNLINK ACK/NACK messages (the MSs with the default MFI_fake assignedto all the MSs in excess of an upper limit, and the MSs the BSS is notaware of). For those MSs the same impact occurs also with an exhaustivealgorithm (since the algorithm is exhaustive just for the addressedMSs). On the network side, the RLC-level procedures shall also bemodified in order to periodically set the start of the transmit windowcorresponding to the least recent radio block not yet positivelyacknowledged that the BSC decides to take into account forretransmissions, based on the selective algorithm.

Furthermore, the BSC may decide that an MS is no more to be taken intoconsideration for the retransmissions management; for example, the BSCmay decide this based on the ACK/NACKs received from that MS, aspreviously explained. In this case, the BSC removes the MS from the listof the individually addressable MSs, for example changing the MSidentifier from MFI to MFI_fake. To do this, the BSC for exampleidentifies the MS by including the respective MFI in a RLC/MAC block,the RLC header of which is further extended to include the MFI_fake. TheRLC header extension for including the MFI_fake may be performed settingthe LI field in one of the octets 450 a, . . . , 450 n to apredetermined value, e.g. LI=57 (following the LI=55 indicating theinclusion of the MFI) in GPRS and LI=77 (following the LI=75 indicatingthe inclusion of the MFI) in EGPRS. The extended RLC header includestherefore Length Indicators+MFI+MFI_fake.

When the MS detects that its identifier has been changed from MFI toMFI_fake, the MS releases the MFI_TAI and MFI_TA_TN values, which becomeno more available any more for that MS.

The BSC further associates the MFI_fake to the TLLI of that MS in thetable 145-1 (or 145-2); the triplet {MFI, MFI_TAI, MFI_TA_TN} previouslyassigned to that MS is now available on the BSC side for a new MS.

The MS removed from the list is from then on no more allowed to sendPACKET DOWNLINK ACK/NACK messages in uplink, even in case the S/P andRRBP fields are set within the MAC header of the current RLC/MAC block.

When a triplet {MFI, MFI_TAI, MFI_TA_TN} becomes available on the BSCside for a new MS, the BSC chooses, e.g. randomly, an MS characterizedby its TLLI and with MFI_fake as a new entry in the list of theindividually addressable MSs: the BSC identifies this MS with these twoparameters in an RLC/MAC block, and changes the MS identifier fromMFI_fake to MFI, adding the parameters MFI_TAI and MFI_TA_TN in the sameRLC/MAC block. In order to achieve this, the MFI may be included bysetting LI=55 for GPRS and LI=75 for EGPRS; the MFI_fake may be includedby setting LI=57 for GPRS and LI=77 for EGPRS; the TLLI may be includedby setting LI=58 for GPRS and LI=78 for EGPRS; the MFI_TAI and theMFI_TA_TN may be included by setting LI=59 for GPRS and LI=79 for EGPRS.The extended RLC header includes therefore Length Indicators plus MFIplus MFI_fake plus TLLI plus MFI_TAI plus MFI_TA_TN.

When the MS, receiving the RLC/MAC block, detects that its identifierhas been changed from MFI_fake to MFI, the MS starts using the assignedMFI_TAI and MFI_TA_TN for TA update purposes. Furthermore, in the table145-1 or 145-2, the BSC associates the triplet {MFI, MFI_TAI, MFI_TA_TN}to the TLLI of that MS.

The MS is not allowed to send PACKET DOWNLINK ACK/NACK messages inuplink, even in case the S/P and RRBP fields are set within the MACheader of the current RLC/MAC block, until a TA value is available onthe MS side via the continuous TA update procedure.

Therefore, the MSs having been assigned an individual triplet {MFI,MFI_TAI, MFI_TA_TN} perform the continuous TA update procedure and,whenever required, send PACKET DOWNLINK ACK/NACK messages for theretransmissions management. The MSs counted by the BSC with the MFI_fakedo not perform the continuous TA update procedure, and do not sendPACKET DOWNLINK ACK/NACK messages, but anyway take advantage of theretransmissions performed by the BSC on the basis of the PACKET DOWNLINKACK/NACK messages sent by the MSs included in the list of theindividually addressable MSs. The MSs of which the BSC is not aware of(i.e. the MSs which were not able to establish an uplink TBF after thereception of the MBMS ASSIGNMENT message and before the TBF startingtime, and the MSs from which the BSC has not received back at least oneRLC data block including the respective TLLI plus TMGI, even if theywere able to establish an uplink TBF) are in the same condition as theMSs counted by the BSC with the default MFI_fake. The difference is thatfor the MSs of which the BSS is not aware of there are no chances to berandomly selected for inclusion in the list of the addressed MSs, unlikethe MSs counted by the BSC with the MFI_fake, which can becomeindividually addressable once one or more triplet becomes available.

Let it now be supposed that, at a given time, a MS asks for the GPRSmulticast service “A”, camping on a network cell (e.g., the cell CELL1)where contents related to multicast service “A” are already beingdistributed “over-the-air” (due to the fact that the session related tomulticast service “A” is already running).

The MS, after joining the correspondent multicast group (being linked tothe corresponding multicast PDP Context), is assigned by the BSC thesame physical communication resources as the other mobile stationsalready exploiting the same multicast service “A” in that network celland, after releasing the radio communication resources that wereassociated to the standard PDP Context initially activated for that MS,starts exploiting the multicast service “A”. For example, an MBMSASSIGNMENT message may be used to deliver, to such MS, the TFI and thePDCH(s) needed for tuning on the multicast service, as well as thetriplet {MFI, MFI_TAI, MFI_MFI_TA_TN} needed for managing the addressingprocedures.

Thanks to the invention embodiments described in the foregoing, GPRSservice data can be distributed to, so as to be exploited by, aplurality of users at a same time, particularly users within the samecell of the cellular network, in a point-to-multipoint modality (i.e.,in multicast), and the network resources, particularly the physicalradio resources, to be allocated are not directly dependent on thenumber of users simultaneously exploiting the GPRS services. This is ofgreat benefit especially in case of GPRS services relatively heavy fromthe viewpoint of the quantity of data to be transferred, such as in GPRSservices involving the distribution of multimedia (audio and/or video)contents. Additionally, the possibility offered by the provision of theadditional MS identifier, the MFI, of individually addressing the MSseven if, belonging to a same multicast service group, they share thesame TFI, is extremely useful, allowing for example to implement highlyefficient acknowledge/unacknowledge policies and thus improving thenetwork quality of service level.

It is also pointed out that more than one GPRS services can bedistributed in multicast at a same time: in this case, two or more TFIswill be broadcasted over the cell broadcast channel, each one labelingradio data blocks of a respective TBF, corresponding to a respectivepilot PDP context; also in this case, the possibility of individuallyaddressing the MSs remains.

The solution according to the embodiment of the invention hereindescribed has the significant advantage of not necessitating massivemodifications of the standard GSM/GPRS apparatuses, already deployed onfield.

Although the present invention has been disclosed and described by wayof an embodiment, it is apparent to those skilled in the art thatseveral modifications to the described embodiment as well as otherembodiments of the present invention are possible without departing fromthe scope thereof as defined in the appended claims.

1. In a wireless communications network comprising a base stationsubsystem configured to control at least one network cell and in whichthe base station subsystem is configured to communicate with mobilestations in the cell through radio blocks, a method of distributinginformation contents received in data packets at the base stationsubsystem to the mobile stations, comprising: obtaining, from the datapackets, radio blocks to be transmitted through the network cell;labeling said radio blocks with a first radio link identifier foridentifying a logic connection between a mobile station and the basestation subsystem, the first radio link identifier associated with amulticast service; communicating the first radio link identifier to afirst mobile station in the network cell; and communicating the firstradio link identifier to at least one second mobile station in thenetwork cell if the at least one second mobile station requests theinformation contents, wherein each of the first mobile station and theat least one second mobile station is assigned a unique second radiolink identifier to be included in said radio blocks, wherein each of thesecond radio link identifiers is indicative of a subscription of thefirst mobile station and the at least one second mobile station to themulticast service corresponding to the first radio link identifier. 2.The method according to claim 1, wherein said first radio linkidentifier comprises a temporary flow identity corresponding to atemporary block flow activated by the base station subsystem fordelivering the information contents to the mobile stations.
 3. Themethod according to claim 1, wherein said second radio link identifiersare univocally assigned to each mobile station.
 4. The method accordingto claim 1, wherein said step of having the first and the at least onesecond mobile stations assigned respective second radio link identifierscomprises assigning to the first and the at least one second mobilestations parameters useful for enabling a synchronization of the radiocommunication between the mobile station and the base station subsystem.5. The method according to claim 1, wherein said step of having thefirst and the at least one second mobile stations assigned respectivesecond radio link identifiers is performed by the base station subsystemon request by the mobile stations.
 6. The method according to claim 1,wherein said step of having the first and the at least one second mobilestations assigned respective second radio link identifiers is performedby the base station subsystem automatically in reply to a servicerequest from the mobile stations.
 7. The method according to claim 5,wherein said step of having the first and the at least one second mobilestations assigned respective second radio link identifiers is performedbefore starting to transmit the radio blocks.
 8. The method according toclaim 5, wherein said step of having the first and the at least onesecond mobile stations assigned respective second radio link identifiersis performed after said step of communicating said first radio linkidentifier to said first and said second mobile stations.
 9. The methodaccording to claim 6, wherein said step of having the first and the atleast one second mobile stations assigned respective second radio linkidentifiers is performed before said step of communicating said firstradio link identifier to said first and said second mobile stations. 10.The method according to claim 1, wherein said step of having the firstand the at least one second mobile stations assigned respective secondradio link identifiers comprises having every mobile station in excessof a predetermined number assigned a common second radio linkidentifier.
 11. The method according to claim 1, wherein said step ofhaving the first and the at least one second mobile stations assignedrespective second radio link identifiers comprises establishing atemporary communication uplink from the mobile stations to the basestation subsystem.
 12. The method according to claim 11, furthercomprising releasing the temporary communication uplink beforetransmitting through the network cell said radio blocks obtained fromsaid data packets.
 13. The method according to claim 1, furthercomprising addressing information to a selected mobile station among thefirst and the at least one second mobile stations using the respectivesecond radio link identifier.
 14. The method according to claim 13,wherein said step of addressing information comprises including thesecond radio link identifier in at least one radio block obtained fromsaid data packets.
 15. The method according to claim 14, wherein saidsecond radio link identifier is included in a header portion of the atleast one radio block.
 16. The method according to claim 13, whereinsaid step of addressing information further comprises requesting theselected mobile station to provide an answer.
 17. The method accordingto claim 16, wherein said step of requesting the selected mobile stationto provide an answer comprises requesting the mobile station to provideacknowledge information on the successful receipt of the radio blocksobtained from the data packets.
 18. The method according to claim 17,comprising retransmitting already transmitted radio blocks, obtainedfrom the data packets, depending on the acknowledge information receivedfrom the mobile stations.
 19. The method according to claim 17,comprising having said answer transmitted to the base station subsystemon a control channel associated with a channel on which the radio blocksare transmitted.
 20. A wireless communications network system,comprising: a network base station subsystem configured for wirelesscommunication with a plurality of mobile stations located in a networkcell via radio blocks, the base station subsystem being configured to:receive data packets, the data packets including information contents tobe distributed to one or more of the plurality of mobile stations;obtain radio blocks from the data packets; label the radio blocks with afirst radio link identifier; communicate the first radio link identifierto a first mobile machine in the network cell, the first radio linkidentifier associated with a multicast service; transmit the radioblocks associated with the first radio link identifier; and communicatethe first radio link identifier to at least one second mobile station inthe network cell if the at least one second mobile station requests theinformation contents, wherein each of the first mobile station and theat least on second mobile station is assigned a unique second radio linkidentifier to be included in said radio blocks, wherein each of thesecond radio link identifiers is indicative of a subscription of thefirst mobile station and the at least one second mobile station to themulticast service corresponding to the first radio link identifier. 21.The wireless communications network system according to claim 20,wherein said first radio link identifier comprises a temporary flowidentity corresponding to a temporary block flow activated by the basestation subsystem for delivering the information contents to the mobilestations.
 22. The wireless communications network system according toclaim 20, wherein the base station subsystem is configured to univocallyassign said second radio link identifiers to each mobile station. 23.The wireless communications network system according to claim 20,wherein the base station subsystem is further configured to assign, tothe first mobile station and the at least one second mobile station,parameters for enabling a synchronization of the radio communicationsbetween the mobile stations and the base station subsystem.
 24. Thewireless communications network system according to claim 20, whereinthe base station subsystem is adapted to assign the second radio linkidentifiers on request from the mobile stations.
 25. The wirelesscommunications network system according to claim 20, wherein the basestation subsystem is configured to assign the second radio linkidentifiers automatically in reply to a service request from the mobilestations.
 26. The wireless communications network system according toclaim 24, wherein the base station subsystem is configured to assign thesecond radio link identifiers before starting to transmit the radioblocks obtained from the data packets.
 27. The wireless communicationsnetwork system according to claim 24, wherein the base station subsystemis configured to assign the second radio link identifiers aftercommunicating the first radio link identifier to the mobile stations.28. The wireless communications network system according to claim 25,wherein the base station subsystem is configured to assign the secondradio link identifiers before communicating the first radio linkidentifier.
 29. The wireless communications network system according toclaim 20, wherein the base station subsystem is configured to assign acommon second radio link identifier to every mobile station in excess ofa predetermined number.
 30. The wireless communications network systemaccording to claim 20, wherein the base station subsystem is configuredto establish a temporary communication uplink from the mobile stationsto the base station subsystem before starting to transmit the radioblocks obtained from the data packets.
 31. The wireless communicationsnetwork system according to claim 20, wherein the base station subsystemis configured to address information to a mobile station among the firstmobile station and the at least one second mobile stations using therespective second radio link identifiers.
 32. The wirelesscommunications network system according to claim 31, wherein the secondradio link identifier is included in at least one of the radio blocksobtained from the data packets.
 33. The wireless communications networksystem according to claim 32, wherein the base station subsystem isconfigured to request the addressed mobile station to provide an answer.34. The wireless communications network system according to claim 33,wherein the base station subsystem is adapted to request the addressedmobile station to provide acknowledgement information on the successfulreceipt of the radio blocks obtained from the data packets.
 35. Thewireless communications network system according to claim 34, whereinthe base station subsystem is configured to retransmit previouslytransmitted radio blocks obtained from said data packets, based on theacknowledge information received from the mobile stations.
 36. Thewireless communications network system according to claim 33, whereinsaid answer is transmitted on a control channel associated with achannel on which the radio blocks are transmitted.